package com.xiaohai.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xiaohai.projo.Course;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xiaohai.projo.dto.CourseDto;
import org.springframework.transaction.annotation.Transactional;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author xiaohai
 * @since 2024-02-24
 */
@Transactional
public interface CourseService extends IService<Course> {

    /**
     * 根据教师id查询课程
     *
     * @param id
     * @return
     */
    Long getByTeacherId(Integer id);

    Page<CourseDto> myList(Integer currentPage, Integer pageSize, String courseName, String teacherName, Integer identity,String account);

    /**
     * 根据id获取详情
     *
     * @param id
     * @return
     */
    Course detail(String id);

    /**
     * 新增课程
     *
     * @param course
     * @return
     */
    boolean add(Course course);

    /**
     * 修改课程
     *
     * @param course
     * @return
     */
    Boolean myUpdate(Course course);

    /**
     * 根据课程id查询分数，如果存在分数则删除
     *
     * @param id
     * @return
     */
    boolean delete(Integer id);
}
